package com.maywide.jdp.system.bean;

import java.util.List;
import java.util.Map;

import com.maywide.jdp.core.bean.LockedBean;
import com.maywide.jdp.system.entities.BusinessFunction;
import com.maywide.jdp.system.vo.ModuleBusinessFunctionTree;

/**
 * 功能函数管理Bean接口
 * 
 * @author luoyang
 * @version 1.0
 * @since JDK1.6
 */
public interface BusinessFunctionBean extends LockedBean {
	/**
	 * 根据RuleID获取业务函数列表
	 * @param ruleID 规则ID
	 * @return 业务函数列表
	 */
	public List<BusinessFunction> findByRuleID(String ruleID) throws Exception;

	/**
	 * 获取所有可用的业务函数对象
	 * @return 业务函数列表
	 */
	public List<BusinessFunction> findAllActive() throws Exception;

	/**
	 * @param id
	 *            移动的节点ID
	 * @param targetID
	 *            移动到的模块节点ID
	 */
	public void move(String id, String targetID)
			throws Exception;

	/**
	 * @param ids
	 *            移动的节点ID列表
	 * @param targetID
	 *            移动到的模块节点ID
	 */
	public void move(List<String> ids, String targetID)
			throws Exception;

	public List<ModuleBusinessFunctionTree> treeGrid(Map<String, Object> conditions,Map<String, Object> parameters) throws Exception;
}
